#ifndef METASTORAGEBASE_H
#define METASTORAGEBASE_H

#include "export.h"
#include "DatabaseAdapter.h"
#include "mqobject.h"
#include <list>

class INFOBUS_API MetaStorageBase
{
public:
  MetaStorageBase();
  virtual ~MetaStorageBase();
  virtual void saveObject(MessageQueueObject * obj) = 0;
  virtual std::list<MessageQueueObject*>& search(const char* pszExec, const char* pszClassName, const char* pszMethodName, std::list<MessageQueueObject*>& list) = 0;

  const char* SelectMsgTime(const char* xml);
  void SelectMsgId(const char* xml, long * lMsgId);
  const char* getCurrTime();
protected:
  DatabaseAdapter * m_pDb;
};

#endif